package com.qhzz.permissionlib;

import android.content.Context;

public class PermissionUtils {

    /**
     * 日历权限申请
     */
    public static void calendarApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.CALENDAR)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 相机权限申请
     */
    public static void cameraApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.CAMERA)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 通讯录权限申请
     */
    public static void contactsApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.CONTACTS)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 位置权限申请
     */
    public static void locationApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.LOCATION)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 音频录制权限申请
     */
    public static void microphoneApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.MICROPHONE)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 电话权限申请
     */
    public static void phoneApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.PHONE)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 传感器权限申请
     */
    public static void sensorsApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.SENSORS)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 短信权限申请
     */
    public static void smsApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.SMS)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

    /**
     * 外部存储权限申请
     */
    public static void storageApply(Context context, OnGrantListener onGrantListener) {
        AndPermission.with(context)
                .permission(Permission.STORAGE)
                .setOnGrantListener(onGrantListener) // 同意监听
                .setRationaleListener(null) // 曾拒绝监听  默认不需要
//                .setOnRefuseListener()  // 拒绝监听
                .start();
    }

}
